﻿



using System; 
using System.Collections;
using System.Collections.Generic ;
using System.Runtime.Serialization;

namespace ufida.u9.ait.openapi
{
	/// <summary>
	/// 单头数据传输对象 Copy DTO :REST自定义的数据传输类型 
	/// 
	/// </summary>
	[DataContract(Namespace = "ufida.u9.ait.openapi")]
	[Serializable]
	public partial class CopyOfCheckDiffData  
	{
		/// <summary>
		/// Default Constructor
		/// </summary>
		public CopyOfCheckDiffData()
		{
			initData();
		}
		private void initData()
		{
					ID= 0; 
				
		
		
		
		
		
		
		
		
		
		
		

			//调用默认值初始化服务进行配置方式初始化
			UFSoft.UBF.Service.DTOService.InitConfigDefault(this);
		}
		[System.Runtime.Serialization.OnDeserializing]
		internal void OnDeserializing(System.Runtime.Serialization.StreamingContext context)
		{
			 initData();
		}
		#region Do SerializeKey -ForDTODataType
		//只为处理集合型EntityKey。原因集合型EntityKey由于使用臫的集合对象，无法实现数据共享.-UBF专用.
		public void DoSerializeKeyList(IDictionary dict)
		{
			if (dict == null ) dict = new Hashtable() ;
			if (dict[this] != null)
				return ;
			dict[this] = this;
	        	        	        			if (this.Org != null) 
			{
				this.Org.DoSerializeKeyList(dict);
			}
	        	        			if (this.DocType != null) 
			{
				this.DocType.DoSerializeKeyList(dict);
			}
	        			if (this.SOBAccountPeriod != null) 
			{
				this.SOBAccountPeriod.DoSerializeKeyList(dict);
			}
	        			if (this.CheckDiffLine!=null)
			{
				foreach(ufida.u9.ait.openapi.CopyOfCheckDiffLineData objdata in this.CheckDiffLine)
				{
					objdata.DoSerializeKeyList(dict);
				}
			}
				        	        			if (this.DescFlexField != null) 
			{
				this.DescFlexField.DoSerializeKeyList(dict);
			}
	        	        			if (this.Currency != null) 
			{
				this.Currency.DoSerializeKeyList(dict);
			}
	        			if (this.Dept != null) 
			{
				this.Dept.DoSerializeKeyList(dict);
			}
	        			if (this.Operators != null) 
			{
				this.Operators.DoSerializeKeyList(dict);
			}

		}
		#endregion 
		/// <summary>
		/// Constructor Full Argument
		/// </summary>
		public CopyOfCheckDiffData(  System.Int64 iD  , System.String docNo  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData org  , System.String businessDate  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData docType  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData sOBAccountPeriod  , List<ufida.u9.ait.openapi.CopyOfCheckDiffLineData> checkDiffLine  , System.String memo  , ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData descFlexField  , System.String inventoryNo  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData currency  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData dept  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData operators  )
		{
			initData();
			this.ID = iD;
			this.DocNo = docNo;
			this.Org = org;
			this.BusinessDate = businessDate;
			this.DocType = docType;
			this.SOBAccountPeriod = sOBAccountPeriod;
			this.CheckDiffLine = checkDiffLine;
			this.Memo = memo;
			this.DescFlexField = descFlexField;
			this.InventoryNo = inventoryNo;
			this.Currency = currency;
			this.Dept = dept;
			this.Operators = operators;
		}
		#region System Fields 
		//--系统字段,目前没有.EntityData上有相应的字段,用于保存相关的实体状态信息,DTO上没有状态信息.	
		#endregion
		
		#region DTO Properties 
	
		

		/// <summary>
		/// ID
		/// 单头数据传输对象 Copy.Misc.ID
		/// </summary>
		private System.Int64 m_iD ;
		[DataMember(IsRequired=false)]
		public System.Int64 ID
		{
			get	
			{	
				return m_iD ;
			}
			set	
			{	
				m_iD = value ;	
			}
		}
			
		

		/// <summary>
		/// 单号
		/// 单头数据传输对象 Copy.Misc.单号
		/// </summary>
		private System.String m_docNo ;
		[DataMember(IsRequired=false)]
		public System.String DocNo
		{
			get	
			{	
				return m_docNo ;
			}
			set	
			{	
				m_docNo = value ;	
			}
		}
			
		

		/// <summary>
		/// 组织
		/// 单头数据传输对象 Copy.Misc.组织
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_org ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData Org
		{
			get	
			{	
				return m_org ;
			}
			set	
			{	
				m_org = value ;	
			}
		}
			
		

		/// <summary>
		/// 单据日期
		/// 单头数据传输对象 Copy.Misc.单据日期
		/// </summary>
		private System.String m_businessDate ;
		[DataMember(IsRequired=false)]
		public System.String BusinessDate
		{
			get	
			{	
				return m_businessDate ;
			}
			set	
			{	
				m_businessDate = value ;	
			}
		}
			
		

		/// <summary>
		/// 单据类型
		/// 单头数据传输对象 Copy.Misc.单据类型
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_docType ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData DocType
		{
			get	
			{	
				return m_docType ;
			}
			set	
			{	
				m_docType = value ;	
			}
		}
			
		

		/// <summary>
		/// 记账期间
		/// 单头数据传输对象 Copy.Misc.记账期间
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_sOBAccountPeriod ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData SOBAccountPeriod
		{
			get	
			{	
				return m_sOBAccountPeriod ;
			}
			set	
			{	
				m_sOBAccountPeriod = value ;	
			}
		}
			
		

		/// <summary>
		/// 单行信息
		/// 单头数据传输对象 Copy.Misc.单行信息
		/// </summary>
		private List<ufida.u9.ait.openapi.CopyOfCheckDiffLineData> m_checkDiffLine ;
		[DataMember(IsRequired=false)]
		public List<ufida.u9.ait.openapi.CopyOfCheckDiffLineData> CheckDiffLine
		{
			get	
			{	
				if (m_checkDiffLine == null )
				{
					List<ufida.u9.ait.openapi.CopyOfCheckDiffLineData> n_m_list = new List<ufida.u9.ait.openapi.CopyOfCheckDiffLineData>() ;
					m_checkDiffLine = n_m_list ;
				}
				return m_checkDiffLine ;
			}
			set	
			{	
				m_checkDiffLine = value ;	
			}
		}
			
		

		/// <summary>
		/// 备注
		/// 单头数据传输对象 Copy.Misc.备注
		/// </summary>
		private System.String m_memo ;
		[DataMember(IsRequired=false)]
		public System.String Memo
		{
			get	
			{	
				return m_memo ;
			}
			set	
			{	
				m_memo = value ;	
			}
		}
			
		

		/// <summary>
		/// 实体扩展字段
		/// 单头数据传输对象 Copy.Misc.实体扩展字段
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData m_descFlexField ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData DescFlexField
		{
			get	
			{	
				return m_descFlexField ;
			}
			set	
			{	
				m_descFlexField = value ;	
			}
		}
			
		

		/// <summary>
		/// 盘点号
		/// 单头数据传输对象 Copy.Misc.盘点号
		/// </summary>
		private System.String m_inventoryNo ;
		[DataMember(IsRequired=false)]
		public System.String InventoryNo
		{
			get	
			{	
				return m_inventoryNo ;
			}
			set	
			{	
				m_inventoryNo = value ;	
			}
		}
			
		

		/// <summary>
		/// 币种
		/// 单头数据传输对象 Copy.Misc.币种
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_currency ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData Currency
		{
			get	
			{	
				return m_currency ;
			}
			set	
			{	
				m_currency = value ;	
			}
		}
			
		

		/// <summary>
		/// 部门
		/// 单头数据传输对象 Copy.Misc.部门
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_dept ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData Dept
		{
			get	
			{	
				return m_dept ;
			}
			set	
			{	
				m_dept = value ;	
			}
		}
			
		

		/// <summary>
		/// 业务员
		/// 单头数据传输对象 Copy.Misc.业务员
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_operators ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData Operators
		{
			get	
			{	
				return m_operators ;
			}
			set	
			{	
				m_operators = value ;	
			}
		}
			
		#endregion	

		#region Multi_Fields
																										
		#endregion 
	} 	
}
